package com.bosssoft.user.permission.center.serve.service;

import cn.hutool.core.lang.tree.Tree;
import com.bosssoft.user.permission.center.serve.dao.entity.UserRoleInfo;
import com.bosssoft.user.permission.center.serve.pojo.query.UserEntity;
import com.bosssoft.user.permission.center.serve.pojo.vo.UserVo;
import common.data.commonresponse.CommonPage;

import java.util.List;

public interface UserService {
    CommonPage<UserEntity> queryUserList(UserEntity userEntity, Integer page, Integer limit);
    CommonPage<UserVo> selectUserInfo(UserEntity userEntity, Integer page, Integer limit);
    boolean addUserInfo(UserEntity userEntity);
    boolean modifyUserInfo(UserEntity userEntity);
    boolean modifyUserStatus(UserEntity userEntity);
    boolean deleteUsersByIds(List<String> ids);

    boolean startUsers(List<String> ids);

    boolean shutUsers(List<String> ids);
    boolean deleteUserById(UserEntity userEntity);

    CommonPage<UserRoleInfo> selectRoleList();

    boolean addUserRoleInfo(List<String> ids,List<String> roleIds);

    List<Tree<String>> getTree();
}
